C++ DLL 链接 Unresolved external
全部标签 平台:WinXPSP2、IntelFortran11、Excel2007我在将dll文件与excel连接时遇到问题。dll文件比较简单:subroutineFortranCall(r1,num)!DEC$ATTRIBUTESDLLEXPORT,STDCALL,REFERENCE,ALIAS:"FortranCall"::FortranCallinteger,intent(in)::r1character(10),intent(out)::num!DEC$ATTRIBUTESREFERENCE::numnum=''write(num,'(i0)')r1*2returnendsubrout
我已经将一些JNIHook编写到C++库中,并为我的Java服务器项目创建了一些DLL文件。假设DLL和jar文件位于“C:/server”下的同一文件夹中我正在使用以下方法访问这些DLL文件:System.loadLibrary("someDLLFile");在需要C++代码的类中。我遇到的问题是,当我在自己的机器上运行这个服务器时,无论我将“服务器”文件夹放在哪里,一切都正常。但是当我把它交给同事测试时,他们不断得到:java.lang.UnsatisfiedLinkErrornosomeDLLFileinjava.library.path我希望DLL文件与jar文件位于同一文件夹
当我在运行时加载一些dll(我们称之为Lib1.dll)但Lib1.dll也依赖于Lib2.dll但Lib2.dll不存在时会发生什么? 最佳答案 如果缺少依赖项,程序将不会运行:尝试访问DLL时将抛出异常/错误。 关于windows-加载依赖于其他dll的dll..?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2104260/
我有一个需要使用的dll。我还有一个程序可以调用这个dll来使用它。我需要能够在另一个程序中使用这个dll,但是以前的程序员没有留下任何文档或源代码。有什么方法可以监控对此dll进行了哪些调用以及传递了什么? 最佳答案 一般来说,你不能。这是来自DependencyWalker常见问题:Q:HowdoIviewtheparameterandreturntypesofafunction?A:Formostfunctions,thisinformationissimplynotpresentinthemodule.TheWindows'
我继承了一个dll项目(VisualC++2002),我在编译它时遇到了很多麻烦。即使*.def文件在当前目录中,VC也只会创建一个lib文件,而不是dll。有人知道会发生什么吗? 最佳答案 实际上是指向网络驱动器的输出目录有问题。dll已创建,但放在一个奇怪的文件夹中。 关于c++-VisualC++不会创建dll文件并在*.lib处停止,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi
这可能是一个非常愚蠢的问题。但是假设我有一个带有一些导出的DLL(test.dll),在构建时会生成一个导入库(test.lib)。我有一个使用此DLL的应用程序TestApp。现在,如果我想更改DLL中某些函数的实现,并且保持导出不变,我是否需要重建使用此DLL/导入库的应用程序?谢谢。 最佳答案 没有。您不需要针对dll进行重建。假设您的应用程序可以在WindowsXP上运行,而有一天Windows7出现了。即使user32.dll、kernel32.dll等系统dll已更新,相同的应用程序也无需重建即可继续工作!
作为我们代码库的一部分,我们有一个工作树内部的符号链接(symboliclink)。Zend->ZendFramework1.10/library/Zend这适用于所有运行Linux或OSX的开发人员,但我们现在有一些人试图在Windows上使用存储库。可以通过删除git创建的链接并使用mklink创建等效的目录连接来复制符号链接(symboliclink)的功能。但是,git现在将此视为符号链接(symboliclink)的删除,以及适当目录的添加。我正在寻找一种让这两者共存的方法,有没有办法告诉Windows机器忽略Zend目录,即使它在技术上是版本化的。如果该目录中的文件发生更改
如果您在Windows上有一个可执行文件,您可以使用DUMPBIN实用程序(例如包含在VisualStudio中)查看其导入部分。要获取所有导入的DLL的列表,您可以运行如下命令(只是一个任意示例):C:\Programme\GIMP-2.0\bin>dumpbin/IMPORTSgimp-2.4.exe|grep-i\.dlllibgimpcolor-2.0-0.dlllibgimpmath-2.0-0.dlllibgimpmodule-2.0-0.dlllibgimpthumb-2.0-0.dlllibgimpwidgets-2.0-0.dlllibart_lgpl_2-2.dll
我正在尝试使用Cygwin和Windows将我的C++程序链接到libcrypto库。我的.cc文件中有这个#include我在usr/include/openssl中有头文件dh.h我在/usr/lib/中有所需的文件(libeay32.dll和ssleay32.dll),但是,当我构建时(使用python构建工具node-waf),我收到诸如undefinedreference之类的错误到_DH_new我在构建脚本的cxxflags部分尝试了各种东西,现在看起来像这样:ppp.cxxflags=["-g","-D_FILE_OFFSET_BITS=64","-D_LARGEFILE
我试图在Windows上找到*nix符号链接(symboliclink)的等价物,并开始使用mklink。问题是,作为普通用户(不是管理员),我可以使用“/J”选项链接到文件夹,但无法链接到文件。我设法以管理员身份完成了它,但我需要它作为标准用户。为什么只有管理员可以在Windows上创建文件链接?有解决方法吗? 最佳答案 您需要SeCreateSymbolicLinkPrivilege来创建符号链接(symboliclink),我认为默认情况下用户不会获得。-斯科特 关于windows